Aharonov–Jones–Landau algorithm

From HandWiki

In computer science, the Aharonov–Jones–Landau algorithm is an efficient quantum algorithm for obtaining an additive approximation of the Jones polynomial of a given link at an arbitrary root of unity. Finding a multiplicative approximation is a #P-hard problem,[1] so a better approximation is considered unlikely. However, it is known that computing an additive approximation of the Jones polynomial is a BQP-complete problem.[2] The algorithm was published in 2009 in a paper written by Dorit Aharonov, Vaughan Jones and Zeph Landau.

The Markov trace

The first idea behind the algorithm is to find a more tractable description for the operation of evaluating the Jones polynomial. This is done by means of the Markov trace.

The "Markov trace" is a trace operator defined on the Temperley–Lieb algebra [math]\displaystyle{ TL_n(d) }[/math] as follows: given a [math]\displaystyle{ T\in TL_n(d) }[/math] which is a single Kauffman diagram, let [math]\displaystyle{ tr(T)=d^{a-n} }[/math] where [math]\displaystyle{ a }[/math] is the number of loops attained by identifying each point in the bottom of [math]\displaystyle{ T }[/math]'s Kauffman diagram with the corresponding point on top. This extends linearly to all of [math]\displaystyle{ TL_n(d) }[/math].

The Markov trace is a trace operator in the sense that [math]\displaystyle{ \operatorname{tr}(1)=1 }[/math] and [math]\displaystyle{ \operatorname{tr}(XY)=\operatorname{tr}(YX) }[/math] for any [math]\displaystyle{ X,Y\in TL_n(d) }[/math]. It also has the additional property that if [math]\displaystyle{ X }[/math] is a Kauffman diagram whose rightmost strand goes straight up then [math]\displaystyle{ \operatorname{tr}(XE_{n-1}) = \frac{1}{d}\operatorname{tr}(X) }[/math].

A useful fact exploited by the AJL algorithm is that the Markov trace is the unique trace operator on [math]\displaystyle{ TL_n(d) }[/math] with that property.[3]

Representing [math]\displaystyle{ B_n }[/math] in [math]\displaystyle{ TL_n(d) }[/math]

For a complex number [math]\displaystyle{ A }[/math] we define the map [math]\displaystyle{ \rho_A:B_n\to TL_n(d) }[/math] via [math]\displaystyle{ \sigma_i\mapsto AE_i+A^{-1}I }[/math]. It follows by direct calculation that if [math]\displaystyle{ A }[/math] satisfies that [math]\displaystyle{ d= -A^2-A^{-2} }[/math] then [math]\displaystyle{ \rho_A }[/math] is a representation.

Given a braind [math]\displaystyle{ B\in B_n }[/math] let [math]\displaystyle{ B^{tr} }[/math] be the link attained by identifying the bottom of the diagram with its top like in the definition of a Markov trace, and let [math]\displaystyle{ V_{B^{tr}} }[/math] be the result link's Jones polynomial. The following relation holds:

[math]\displaystyle{ V_{B^{tr}}(A^{-4})=(-A)^{3w(B^{tr})}d^{n-1}\operatorname{tr}(\rho_A(B)) }[/math]

where [math]\displaystyle{ w }[/math] is the writhe. As the writhe can be easily calculated classically, this reduces the problem of approximating the Jones polynomial to that of approximating the Markov trace.

The path model representation of [math]\displaystyle{ TL_n(d) }[/math]

We wish to construct a complex representation [math]\displaystyle{ \tau }[/math] of [math]\displaystyle{ TL_n(d) }[/math] such that the representation [math]\displaystyle{ \tau\circ\rho_A }[/math] of [math]\displaystyle{ B_n }[/math] will be unitary. We also wish that our representation will have a straightforward encoding into qubits.

Let

[math]\displaystyle{ Q_{n,k}=\left\{ q\in\left\{ 1,\ldots,k-1\right\} ^{n+1}\mid q(1)=1,\left|q(i)-q(i+1)\right|=1\right\} }[/math]

and let [math]\displaystyle{ V_{n,k}=\mathbb{C}[Q_{n,k}] }[/math] be the vector space which has [math]\displaystyle{ Q_{n,k} }[/math] as an orthonormal basis.

We choose define a linear map [math]\displaystyle{ \tau:TL_n(d)\to V_{n,k} }[/math] by defining it on the base of generators [math]\displaystyle{ \{1,E_1,\ldots,E_{n-1}\} }[/math]. To do so we need to define the matrix element [math]\displaystyle{ \tau(E_i)_{q,q'} }[/math] for any [math]\displaystyle{ q,q'\in Q_{n,k} }[/math].

We say that [math]\displaystyle{ q }[/math] and [math]\displaystyle{ q' }[/math] are 'compatible' if [math]\displaystyle{ q(j)=q'(j) }[/math] for any [math]\displaystyle{ j\ne i+1 }[/math] and [math]\displaystyle{ q(i)=q(i+2) }[/math]. Geometrically this means that if we put [math]\displaystyle{ q }[/math] and [math]\displaystyle{ q' }[/math] below and above the Kauffman diagram in the gaps between the strands then no connectivity component will touch two gaps which are labeled by different numbers.

If [math]\displaystyle{ q }[/math] and [math]\displaystyle{ q' }[/math] are incompatible set [math]\displaystyle{ \tau(E_i)_{q,q'}=0 }[/math]. Else, let [math]\displaystyle{ l }[/math] be either [math]\displaystyle{ q(i) }[/math] or [math]\displaystyle{ q(i+2) }[/math] (at least one of these number must be defined, and if both are defined they must be equal) and set

[math]\displaystyle{ \tau\left(E_{i}\right)_{q,q'}=\begin{cases} \frac{\lambda_{l+1}}{\lambda_{l}} & q\left(i+1\right)=q'(i+1)\gt l\\ \frac{\sqrt{\lambda_{l-1}\lambda_{l+1}}}{\lambda_{l}} & q\left(i+1\right)\ne q'(i+1)\\ \frac{\lambda_{l-1}}{\lambda_{l}} & q\left(i+1\right)=q'(i+1)\lt l \end{cases} }[/math]

where [math]\displaystyle{ \lambda_l=\sin(\pi l/k) }[/math]. Finally set [math]\displaystyle{ d=2\cos(\pi/k) }[/math].

This representation, known as the path model representation, induces a unitary representation of the braid group.[4][5] Moreover, it holds that [math]\displaystyle{ d=-A^2-A^{-2} }[/math] for [math]\displaystyle{ A=ie^{-i\pi/2k} }[/math].

This implies that if we could approximate the Markov trace in this representation this will allow us to approximate the Jones polynomial in [math]\displaystyle{ A^{-4}=e^{2\pi i/k} }[/math].

A quantum version of the path model representation

In order to be able to act on elements of the path model representation by means of quantum circuits, we need to encode the elements of [math]\displaystyle{ Q_{n,k} }[/math] into qubits in a way which allows us to easily describe the images of the generators [math]\displaystyle{ E_i }[/math].

We represent each path as a sequence of moves, where [math]\displaystyle{ 0 }[/math] indicates a move to the right and [math]\displaystyle{ 1 }[/math] indicates a move to the left. For example, the path [math]\displaystyle{ 1,2,3,2 }[/math] will be represented by the state [math]\displaystyle{ \left|001\right\rangle }[/math].

This encodes [math]\displaystyle{ \mathbb{C}[Q_{n,k}] }[/math] as a subspace of the state space on [math]\displaystyle{ k-1 }[/math] qubits.

We define the operators [math]\displaystyle{ \varphi_i }[/math] within this subspace we define

[math]\displaystyle{ \Phi_{i}\left|w\right\rangle =\begin{cases} 0 & w_{i}=w_{i+1}\\ \frac{\lambda_{z_{i}-\left(-1\right)^{w_{i}}}}{\lambda_{z_{i}}}\left|w\right\rangle +\frac{\sqrt{\lambda_{z_{i}-1}\lambda_{z_{i}+1}}}{\lambda_{z_{i}}}X_{i}X_{i+1}\left|w\right\rangle & w_{i}\ne w_{i+1} \end{cases} }[/math]

where [math]\displaystyle{ X_i }[/math] is the Pauli matrix flipping the [math]\displaystyle{ i }[/math]th bit and [math]\displaystyle{ z_i }[/math] is the position of the path represented by [math]\displaystyle{ \left|w\right\rangle }[/math] after [math]\displaystyle{ i }[/math] steps.

We arbitrarily extend [math]\displaystyle{ \varphi_i }[/math] to be the identity on the rest of the space.

We note that mapping [math]\displaystyle{ E_i\mapsto\varphi_i }[/math] retains all the properties of the path model representation. Specifically, it induces a unitary representation [math]\displaystyle{ \varphi }[/math] of [math]\displaystyle{ B_n }[/math]. It is fairly straightforward to show that [math]\displaystyle{ \varphi_i }[/math] can be implemented by [math]\displaystyle{ \text{poly}\left(n,k\right) }[/math] gates, so it follows that [math]\displaystyle{ \varphi(B) }[/math] can be implemented for any [math]\displaystyle{ B\in B_n }[/math] using [math]\displaystyle{ \text{poly}\left(m,n,k\right) }[/math] where [math]\displaystyle{ m }[/math] is the number of crossings in [math]\displaystyle{ B }[/math].

A quantum version of the Markov trace

The benefit of this construction is that it gives us a way to represent the Markov trace in a way which can be easily approximated.

Let [math]\displaystyle{ \mathcal{H}_{n,k} }[/math] be the subspace of paths we described in the previous clause, and let [math]\displaystyle{ \mathcal{H}_{n,k,l} }[/math] be the subspace spanned by basis elements which represent walks which end on the [math]\displaystyle{ l }[/math]-th position.

Note that each of the operators [math]\displaystyle{ \varphi_i }[/math] fix [math]\displaystyle{ \mathcal{H}_{n,k,l} }[/math] setwise, and so this holds for any [math]\displaystyle{ W\in\text{Im}\Phi\left(TL_{n}\left(d\right)\right) }[/math], hence the operator [math]\displaystyle{ W|_l:=W|_{\mathcal{H}_{n,k,l}} }[/math] is well defined.

We define the following operator:

[math]\displaystyle{ \operatorname{Tr}_{n}\left(W\right)=\frac{1}{N}\sum_{l=1}^{k-1}\lambda_{l}\operatorname{Tr}\left(W|_{l}\right) }[/math]

where [math]\displaystyle{ \operatorname{Tr} }[/math] is the usual matrix trace.

It turns out that this operator is a trace operator with the Markov property, so by the theorem stated above it has to be the Markov trace. This finishes the required reductions as it establishes that to approximate the Jones polynomial it suffices to approximate [math]\displaystyle{ \operatorname{Tr}_{n} }[/math].

The algorithm

algorithm Approximate-Jones-Trace-Closure is
    input [math]\displaystyle{ B\in B_n }[/math] with [math]\displaystyle{ m }[/math] crossings
                An integer [math]\displaystyle{ k }[/math]
    output a number [math]\displaystyle{ s }[/math] such that [math]\displaystyle{ |s-V_{B^{tr}}(e^{2\pi/k})|\lt 1/poly(n,k,m) }[/math] 
                 with all but exponentially small probability
    repeat for [math]\displaystyle{ j=1 }[/math] to [math]\displaystyle{ poly(n,m,k) }[/math]
        1. Pick a random [math]\displaystyle{ l\in\{1,\ldots,k-1\} }[/math] such that the probability
           to choose a particular [math]\displaystyle{ l }[/math] is proportional to [math]\displaystyle{ \lambda_l }[/math]
        2. Randomly pick [math]\displaystyle{ q\in Q_{n,k} }[/math] which ends in position [math]\displaystyle{ l }[/math]
        3. Using the Hadamard test create a random variable [math]\displaystyle{ x_j }[/math] with
           [math]\displaystyle{ \mathbb{E}\left[x_{j}\right]=\mathcal{Re}\left\langle \alpha\mid Q\left(B\right)\mid\beta\right\rangle  }[/math]
    Do the same to create [math]\displaystyle{ y_j }[/math] with [math]\displaystyle{ \mathbb{E}\left[y_{j}\right]=\mathcal{Im}\left\langle \alpha\mid Q\left(B\right)\mid\beta\right\rangle  }[/math]
    let [math]\displaystyle{ r }[/math] be the average of [math]\displaystyle{ x_j+iy_j }[/math]
    return [math]\displaystyle{ (-A)^{3w(B^{tr})}d^{n-1}r }[/math]

Note that the parameter [math]\displaystyle{ d }[/math] used in the algorithm depends on [math]\displaystyle{ k }[/math].

The correctness of this algorithm is established by applying the Hoeffding bound to [math]\displaystyle{ x_j }[/math] and [math]\displaystyle{ y_j }[/math] separately.

Notes

  1. Kuperberg, Greg (2009). "How hard is it to approximate the Jones polynomial?". arXiv:0908.0512.
  2. Freedman, Michael; Larsen, Michael; Wang, Zhenghan (2000). "A modular functor which is universal for quantum computation". arXiv:quant-ph/0001108.
  3. Jones, V.F.R (1983). "Index for subfactors". Invent Math 1 (72). doi:10.1007/BF01389127. Bibcode1983InMat..72....1J. 
  4. Jones, V.F.R (1985). "A polynomial invariant for knots via von Neumann algebras". Bull. Amer. Math. Soc. 12: 103–111. doi:10.1090/s0273-0979-1985-15304-2. 
  5. Jones, V.F.R (1986). "Braid groups, Hecke Algebras and type II factors". Geometric methods in Operator Algebras 123: 242-273. 

References

  1. D. Aharonov, V. Jones, Z. Landau - A Polynomial Quantum Algorithm for Approximating the Jones Polynomial